package com.fin.quant.instra.mysql.model;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 资产/组合指标表,存放动态可扩展指标
 */
public class TargetMetrics {
    /**
    * 主键ID
    */
    private Long id;

    /**
    * 类型：ASSET 或 PORTFOLIO
    */
    private String targetType;

    /**
    * 资产ID(asset.id) 或组合ID(portfolio.id)
    */
    private Long targetId;

    /**
    * 指标日期,yyyy-MM-dd HH:mm:ss
    */
    private Date metricDate;

    /**
    * 指标名称，如 dividend_yield, pe_ratio, ROI
    */
    private String metricName;

    /**
    * 指标值
    */
    private BigDecimal metricValue;

    /**
    * 创建时间
    */
    private Date createdAt;

    /**
    * 更新时间
    */
    private Date updatedAt;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getTargetType() {
        return targetType;
    }

    public void setTargetType(String targetType) {
        this.targetType = targetType;
    }

    public Long getTargetId() {
        return targetId;
    }

    public void setTargetId(Long targetId) {
        this.targetId = targetId;
    }

    public Date getMetricDate() {
        return metricDate;
    }

    public void setMetricDate(Date metricDate) {
        this.metricDate = metricDate;
    }

    public String getMetricName() {
        return metricName;
    }

    public void setMetricName(String metricName) {
        this.metricName = metricName;
    }

    public BigDecimal getMetricValue() {
        return metricValue;
    }

    public void setMetricValue(BigDecimal metricValue) {
        this.metricValue = metricValue;
    }

    public Date getCreatedAt() {
        return createdAt;
    }

    public void setCreatedAt(Date createdAt) {
        this.createdAt = createdAt;
    }

    public Date getUpdatedAt() {
        return updatedAt;
    }

    public void setUpdatedAt(Date updatedAt) {
        this.updatedAt = updatedAt;
    }
}